<!DOCTYPE html>
<!-- saved from url=(0030)http://localhost:3000/#/README -->
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  
  <title>首页</title>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="description" content="Description">
  <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
  <meta http-equiv="Pragma" content="no-cache">
  <meta http-equiv="Expires" content="0">
  <link rel="stylesheet" href="./首页_files/vue.css">
<style type="text/css">.docsify-copy-code-button,.docsify-copy-code-button span{cursor:pointer;transition:all .25s ease}.docsify-copy-code-button{position:absolute;z-index:1;top:0;right:0;overflow:visible;padding:.65em .8em;border:0;border-radius:0;outline:0;font-size:1em;background:grey;background:var(--theme-color,grey);color:#fff;opacity:0}.docsify-copy-code-button span{border-radius:3px;background:inherit;pointer-events:none}.docsify-copy-code-button .error,.docsify-copy-code-button .success{position:absolute;z-index:-100;top:50%;right:0;padding:.5em .65em;font-size:.825em;opacity:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.docsify-copy-code-button.error .error,.docsify-copy-code-button.success .success{right:100%;opacity:1;-webkit-transform:translate(-115%,-50%);transform:translate(-115%,-50%)}.docsify-copy-code-button:focus,pre:hover .docsify-copy-code-button{opacity:1}</style><style type="text/css">.medium-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s;will-change:opacity}.medium-zoom--opened .medium-zoom-overlay{cursor:pointer;cursor:zoom-out;opacity:1}.medium-zoom-image{cursor:pointer;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,0,.2,1)!important}.medium-zoom-image--hidden{visibility:hidden}.medium-zoom-image--opened{position:relative;cursor:pointer;cursor:zoom-out;will-change:transform}</style><style type="text/css">.sidebar-nav > ul > li ul {
  display: none;
}

.app-sub-sidebar {
  display: none;
}

.app-sub-sidebar.open {
  display: block;
}

.sidebar-nav .open > ul:not(.app-sub-sidebar),
.sidebar-nav .active:not(.collapse) > ul {
  display: block;
}

/* 抖动 */
.sidebar-nav li.open:not(.collapse) > ul {
  display: block;
}

.active + ul.app-sub-sidebar {
  display: block;
}
</style><style type="text/css">@media screen and (max-width: 768px) {
  /* 移动端适配 */
  .markdown-section {
    max-width: none;
    padding: 16px;
  }
  /* 改变原来按钮热区大小 */
  .sidebar-toggle {
    padding: 0 0 10px 10px;
  }
  /* my pin */
  .sidebar-pin {
    appearance: none;
    outline: none;
    position: fixed;
    bottom: 0;
    border: none;
    width: 40px;
    height: 40px;
    background: transparent;
  }
}
</style><style>
.sidebar {
  padding-top: 0;
}

.search {
  margin-bottom: 20px;
  padding: 6px;
  border-bottom: 1px solid #eee;
}

.search .results-panel {
  display: none;
}

.search .results-panel.show {
  display: block;
}

.search input {
  outline: none;
  border: none;
  width: 100%;
  padding: 7px;
  line-height: 22px;
  font-size: 14px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.search h2 {
  font-size: 17px;
  margin: 10px 0;
}

.search a {
  text-decoration: none;
  color: inherit;
}

.search .matching-post {
  border-bottom: 1px solid #eee;
}

.search .matching-post:last-child {
  border-bottom: 0;
}

.search p {
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.search p.empty {
  text-align: center;
}</style></head>
<body data-page="README.md" class="ready sticky">
  <a href="https://github.com/peach-boy/cs-book" target="_blank" class="github-corner" aria-label="View source on Github"><svg viewBox="0 0 250 250" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><main><button class="sidebar-toggle" aria-label="Menu"><div class="sidebar-toggle-button"><span></span><span></span><span></span></div></button><aside class="sidebar"><div class="search"><input type="search" value="" placeholder="搜索"><div class="results-panel"></div></div><h1 class="app-name"><a class="app-name-link" data-nosearch="" href="http://localhost:3000/">CS-BOOK</a></h1><div class="sidebar-nav"><ul><li class="open file"><p class="active open"><a href="http://localhost:3000/#/README" title="首页">首页</a></p></li><li class="folder level-1"><p>java</p><ul><li class="file"><p><a href="http://localhost:3000/#/./docs/java/%E5%9F%BA%E7%A1%80/%E5%9F%BA%E7%A1%80" title="基础">基础</a></p></li><li class="folder level-2"><p>并发</p><ul><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%9F%BA%E7%A1%80%E7%AF%87" title="基础篇">基础篇</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8Bsynchronized" title="原理篇之 synchronized">原理篇之 synchronized</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8Bvolatile" title="原理篇之 volatile">原理篇之 volatile</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E7%BA%BF%E7%A8%8B%E6%B1%A0" title="原理篇之线程池">原理篇之线程池</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%BA%94%E7%94%A8%E7%AF%87(%E4%B8%80)" title="应用篇（一）">应用篇（一）</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%BA%94%E7%94%A8%E7%AF%87(%E4%BA%8C)" title="应用篇（二）">应用篇（二）</a></li></ul></li><li class="folder level-2"><p>集合</p><ul><li class="file"><a href="http://localhost:3000/#/docs/java/%E9%9B%86%E5%90%88/%E5%9F%BA%E7%A1%80%E7%AF%87" title="基础篇">基础篇</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E9%9B%86%E5%90%88/HashMap%E5%8E%9F%E7%90%86" title="HashMap 原理">HashMap 原理</a></li></ul></li><li class="file"><p>I/O</p></li><li class="folder level-2"><p>JVM</p><ul><li class="file"><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84" title="JVM 之内存结构">JVM 之内存结构</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E7%B1%BB%E5%8A%A0%E8%BD%BD" title="JVM 之类加载">JVM 之类加载</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E5%9E%83%E5%9C%BE%E5%9B%9E%E6%94%B6" title="JVM 之垃圾回收">JVM 之垃圾回收</a></li></ul></li><li class="folder level-2"><p>java8</p><ul><li class="file"><a href="http://localhost:3000/#/docs/java/java8/java8-lambda%E8%A1%A8%E8%BE%BE%E5%BC%8F" title="java8-lambda 表达式">java8-lambda 表达式</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/java8/java8-streamApi" title="java8-streamApi">java8-streamApi</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/java8/java8-%E5%B8%B8%E7%94%A8%E6%95%B0%E6%8D%AE%E5%A4%84%E7%90%86" title="java8-常用数据处理">java8-常用数据处理</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/java8/%E6%B5%85%E8%B0%88javaStreamApi%E5%8E%9F%E7%90%86" title="java8-streamApi 原理">java8-streamApi 原理</a></li></ul></li><li class="folder level-2"><p>其他</p><ul><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%85%B6%E4%BB%96/intercepter-and-threadlocal" title="intercepter 配合 threadlocal 实现线程内数据扩展">intercepter 配合 threadlocal 实现线程内数据扩展</a></li><li class="file"><a href="http://localhost:3000/#/docs/java/%E5%85%B6%E4%BB%96/Iterator%E5%BE%AA%E7%8E%AF%E5%88%A0%E9%99%A4list%E4%B8%AD%E5%85%83%E7%B4%A0" title="Iterator 循环删除 list 中元素">Iterator 循环删除 list 中元素</a></li></ul></li></ul></li><li class="folder level-1"><p>常用框架</p><ul><li class="folder level-2"><p>springFramework</p><ul><li class="file"><a href="http://localhost:3000/#/docs/%E5%B8%B8%E7%94%A8%E6%A1%86%E6%9E%B6/springFramework/spring%E4%BA%8B%E5%8A%A1" title="spring 事务">spring 事务</a></li></ul></li><li class="folder level-2"><p>springboot</p><ul><li class="file">[springboot 之 stater 原理]TODO</li><li class="file">[springboot 之自动配置]TODO</li></ul></li><li class="folder level-2"><p>mybatis</p><ul><li class="file"><a href="http://localhost:3000/#/docs/%E5%B8%B8%E7%94%A8%E6%A1%86%E6%9E%B6/mybatis/mybatis%E5%B8%B8%E7%94%A8%E8%AF%AD%E5%8F%A5" title="mybatis 使用经验">mybatis 使用经验</a></li></ul></li></ul></li><li class="folder level-1"><p>中间件</p><ul><li class="folder level-2">缓存<ul><li class="folder level-3">Redis<ul><li class="file"><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E5%9F%BA%E7%A1%80%E7%AF%87" title="基础篇">基础篇</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81" title="专题篇之分布式锁">专题篇之分布式锁</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E7%BC%93%E5%AD%98%E7%A9%BF%E9%80%8F%EF%BC%8C%E5%87%BB%E7%A9%BF%EF%BC%8C%E9%9B%AA%E5%B4%A9" title="专题篇之缓存穿透，击穿，雪崩">专题篇之缓存穿透，击穿，雪崩</a></li></ul></li></ul></li><li class="folder level-2">消息队列<ul><li class="folder level-3">RabbitMQ<ul><li class="file"><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97/RabbitMQ/%E5%9F%BA%E7%A1%80%E7%AF%87" title="基础篇">基础篇</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97/RabbitMQ/%E9%AB%98%E7%BA%A7%E7%AF%87" title="高级篇">高级篇</a></li></ul></li></ul></li></ul></li><li class="folder level-1"><p>数据库</p><ul><li class="file"><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E4%B9%8B%E4%BA%8B%E5%8A%A1" title="mysql 之事务">mysql 之事务</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E4%B9%8B%E9%94%81" title="mysql 之锁">mysql 之锁</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E4%B9%8B%E7%B4%A2%E5%BC%95" title="mysql 之索引">mysql 之索引</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E6%9F%A5%E8%AF%A2%E4%BC%98%E5%8C%96" title="专题篇之查询优化">专题篇之查询优化</a></li></ul></li><li class="folder level-1"><p>分布式系统设计</p><ul><li class="file">[分布式锁]TODO</li><li class="file">[分布式事务]TODO</li><li class="file"><a href="http://localhost:3000/#/docs/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/%E5%B9%82%E7%AD%89%E6%80%A7" title="幂等性">幂等性</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/%E9%99%90%E6%B5%81" title="限流">限流</a></li></ul></li><li class="folder level-1"><p>代码质量</p><ul><li class="folder level-2"><p>设计模式</p><ul><li class="folder level-3">创建类<ul><li class="file"><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E5%88%9B%E5%BB%BA%E7%B1%BB/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F" title="单例模式">单例模式</a></li></ul></li><li class="file">结构类</li><li class="folder level-3">行为类<ul><li class="file"><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E7%AD%96%E7%95%A5%E6%A8%A1%E5%BC%8F" title="策略模式">策略模式</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E8%B4%A3%E4%BB%BB%E9%93%BE%E6%A8%A1%E5%BC%8F" title="责任链模式">责任链模式</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E6%A8%A1%E6%9D%BF%E6%96%B9%E6%B3%95%E6%A8%A1%E5%BC%8F" title="模板方法模式">模板方法模式</a></li></ul></li></ul></li><li class="file"><p>领域驱动设计</p></li><li class="file"><p><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E6%96%87%E7%AB%A0%E6%94%B6%E8%97%8F" title="文章收藏">文章收藏</a></p></li></ul></li><li class="folder level-1"><p>数据结构与算法</p><ul><li class="folder level-2">数据结构<ul><li class="file"><a href="https://www.cnblogs.com/maybe2030/p/4732377.html" target="_blank" rel="noopener" title="树">树</a></li><li class="file"><a href="https://www.cnblogs.com/maybe2030/p/4719267.html" target="_blank" rel="noopener" title="哈希表">哈希表</a></li></ul></li><li class="file">算法</li></ul></li><li class="folder level-1"><p>产品与业务</p><ul><li class="folder level-2">支付域<ul><li class="file"><a href="http://localhost:3000/#/docs/%E4%BA%A7%E5%93%81%E5%92%8C%E4%B8%9A%E5%8A%A1/%E6%94%AF%E4%BB%98%E7%B3%BB%E7%BB%9F%E7%BB%84%E6%88%90" title="支付系统组成">支付系统组成</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E4%BA%A7%E5%93%81%E5%92%8C%E4%B8%9A%E5%8A%A1/%E6%94%AF%E4%BB%98%E7%B3%BB%E7%BB%9F%E4%B9%8B%E8%B5%84%E6%8D%9F%E9%97%AE%E9%A2%98" title="支付系统之资损问题">支付系统之资损问题</a></li></ul></li></ul></li><li class="folder level-1"><p>其他</p><ul><li class="folder level-2">工具<ul><li class="file"><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B7%A5%E5%85%B7/git%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4" title="git 常用命令">git 常用命令</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B7%A5%E5%85%B7/maven%E5%9F%BA%E7%A1%80" title="maven 基础">maven 基础</a></li></ul></li><li class="folder level-2">interview<ul><li class="file"><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/interview/%E7%AC%94%E8%AF%95%E9%A2%98" title="笔试题">笔试题</a></li></ul></li><li class="file"><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E7%BD%91%E5%9D%80%E6%94%B6%E8%97%8F" title="网址收藏">网址收藏</a></li><li class="file"><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3" title="帮助文档">帮助文档</a></li></ul></li></ul></div></aside><section class="content"><article class="markdown-section" id="main">
        
        <div style="margin-bottom: 10px;">
            <span style="
                  float: right;
                  font-size: 0.9em;
                  color:rgb(90,90,90);">
            928 words
            &nbsp; | &nbsp;3 min
            </span>
            <div style="clear: both"></div>
        </div>
        <ul><li><p><a href="http://localhost:3000/#/README">首页</a></p></li><li><p>java</p><ul><li><p><a href="http://localhost:3000/#/./docs/java/%E5%9F%BA%E7%A1%80/%E5%9F%BA%E7%A1%80">基础</a></p></li><li><p>并发</p><ul><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%9F%BA%E7%A1%80%E7%AF%87">基础篇</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8Bsynchronized">原理篇之 synchronized</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8Bvolatile">原理篇之 volatile</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E7%BA%BF%E7%A8%8B%E6%B1%A0">原理篇之线程池</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%BA%94%E7%94%A8%E7%AF%87(%E4%B8%80)">应用篇（一）</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%B9%B6%E5%8F%91/%E5%BA%94%E7%94%A8%E7%AF%87(%E4%BA%8C)">应用篇（二）</a></li></ul></li><li><p>集合</p><ul><li><a href="http://localhost:3000/#/docs/java/%E9%9B%86%E5%90%88/%E5%9F%BA%E7%A1%80%E7%AF%87">基础篇</a></li><li><a href="http://localhost:3000/#/docs/java/%E9%9B%86%E5%90%88/HashMap%E5%8E%9F%E7%90%86">HashMap 原理</a></li></ul></li><li><p>I/O</p></li><li><p>JVM</p><ul><li><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84">JVM 之内存结构</a></li><li><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E7%B1%BB%E5%8A%A0%E8%BD%BD">JVM 之类加载</a></li><li><a href="http://localhost:3000/#/docs/java/JVM/JVM%E4%B9%8B%E5%9E%83%E5%9C%BE%E5%9B%9E%E6%94%B6">JVM 之垃圾回收</a></li></ul></li><li><p>java8</p><ul><li><a href="http://localhost:3000/#/docs/java/java8/java8-lambda%E8%A1%A8%E8%BE%BE%E5%BC%8F">java8-lambda 表达式</a></li><li><a href="http://localhost:3000/#/docs/java/java8/java8-streamApi">java8-streamApi</a></li><li><a href="http://localhost:3000/#/docs/java/java8/java8-%E5%B8%B8%E7%94%A8%E6%95%B0%E6%8D%AE%E5%A4%84%E7%90%86">java8-常用数据处理</a></li><li><a href="http://localhost:3000/#/docs/java/java8/%E6%B5%85%E8%B0%88javaStreamApi%E5%8E%9F%E7%90%86">java8-streamApi 原理</a></li></ul></li><li><p>其他</p><ul><li><a href="http://localhost:3000/#/docs/java/%E5%85%B6%E4%BB%96/intercepter-and-threadlocal">intercepter 配合 threadlocal 实现线程内数据扩展</a></li><li><a href="http://localhost:3000/#/docs/java/%E5%85%B6%E4%BB%96/Iterator%E5%BE%AA%E7%8E%AF%E5%88%A0%E9%99%A4list%E4%B8%AD%E5%85%83%E7%B4%A0">Iterator 循环删除 list 中元素</a></li></ul></li></ul></li><li><p>常用框架</p><ul><li><p>springFramework</p><ul><li><a href="http://localhost:3000/#/docs/%E5%B8%B8%E7%94%A8%E6%A1%86%E6%9E%B6/springFramework/spring%E4%BA%8B%E5%8A%A1">spring 事务</a></li></ul></li><li><p>springboot</p><ul><li>[springboot 之 stater 原理]TODO</li><li>[springboot 之自动配置]TODO</li></ul></li><li><p>mybatis</p><ul><li><a href="http://localhost:3000/#/docs/%E5%B8%B8%E7%94%A8%E6%A1%86%E6%9E%B6/mybatis/mybatis%E5%B8%B8%E7%94%A8%E8%AF%AD%E5%8F%A5">mybatis 使用经验</a></li></ul></li></ul></li><li><p>中间件</p><ul><li>缓存<ul><li>Redis<ul><li><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E5%9F%BA%E7%A1%80%E7%AF%87">基础篇</a></li><li><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81">专题篇之分布式锁</a></li><li><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E7%BC%93%E5%AD%98/Redis/%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E7%BC%93%E5%AD%98%E7%A9%BF%E9%80%8F%EF%BC%8C%E5%87%BB%E7%A9%BF%EF%BC%8C%E9%9B%AA%E5%B4%A9">专题篇之缓存穿透，击穿，雪崩</a></li></ul></li></ul></li><li>消息队列<ul><li>RabbitMQ<ul><li><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97/RabbitMQ/%E5%9F%BA%E7%A1%80%E7%AF%87">基础篇</a></li><li><a href="http://localhost:3000/#/docs/%E4%B8%AD%E9%97%B4%E4%BB%B6/%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97/RabbitMQ/%E9%AB%98%E7%BA%A7%E7%AF%87">高级篇</a></li></ul></li></ul></li></ul></li><li><p>数据库</p><ul><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84">mysql 原理篇之体系结构</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E4%BA%8B%E5%8A%A1">mysql 原理篇之事务</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E9%94%81">mysql 原理篇之锁</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8B%E7%B4%A2%E5%BC%95">mysql 原理篇之索引</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E5%8E%9F%E7%90%86%E7%AF%87%E4%B9%8BMVCC">mysql 原理篇之 MVCC</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E6%9F%A5%E8%AF%A2%E4%BC%98%E5%8C%96">mysql 专题篇之查询优化</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E9%9B%86%E7%BE%A4">mysql 专题篇之集群</a></li><li><a href="http://localhost:3000/#/docs/%E6%95%B0%E6%8D%AE%E5%BA%93/mysql%E4%B8%93%E9%A2%98%E7%AF%87%E4%B9%8B%E5%A4%A7%E8%A1%A8%E4%BC%98%E5%8C%96">mysql 专题篇之分大表优化</a></li></ul></li><li><p>分布式系统设计</p><ul><li>[分布式锁]TODO</li><li>[分布式事务]TODO</li><li><a href="http://localhost:3000/#/docs/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/%E5%B9%82%E7%AD%89%E6%80%A7">幂等性</a></li><li><a href="http://localhost:3000/#/docs/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/%E9%99%90%E6%B5%81">限流</a></li></ul></li><li><p>代码质量</p><ul><li><p>设计模式</p><ul><li>创建类<ul><li><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E5%88%9B%E5%BB%BA%E7%B1%BB/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F">单例模式</a></li></ul></li><li>结构类</li><li>行为类<ul><li><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E7%AD%96%E7%95%A5%E6%A8%A1%E5%BC%8F">策略模式</a></li><li><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E8%B4%A3%E4%BB%BB%E9%93%BE%E6%A8%A1%E5%BC%8F">责任链模式</a></li><li><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/%E8%A1%8C%E4%B8%BA%E7%B1%BB/%E6%A8%A1%E6%9D%BF%E6%96%B9%E6%B3%95%E6%A8%A1%E5%BC%8F">模板方法模式</a></li></ul></li></ul></li><li><p>领域驱动设计</p></li><li><p><a href="http://localhost:3000/#/docs/%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F/%E6%96%87%E7%AB%A0%E6%94%B6%E8%97%8F">文章收藏</a></p></li></ul></li><li><p>数据结构与算法</p><ul><li>数据结构<ul><li><a href="https://www.cnblogs.com/maybe2030/p/4732377.html" target="_blank" rel="noopener">树</a></li><li><a href="https://www.cnblogs.com/maybe2030/p/4719267.html" target="_blank" rel="noopener">哈希表</a></li></ul></li><li>算法</li></ul></li><li><p>产品与业务</p><ul><li>支付域<ul><li><a href="http://localhost:3000/#/docs/%E4%BA%A7%E5%93%81%E5%92%8C%E4%B8%9A%E5%8A%A1/%E6%94%AF%E4%BB%98%E7%B3%BB%E7%BB%9F%E7%BB%84%E6%88%90">支付系统组成</a></li><li><a href="http://localhost:3000/#/docs/%E4%BA%A7%E5%93%81%E5%92%8C%E4%B8%9A%E5%8A%A1/%E6%94%AF%E4%BB%98%E7%B3%BB%E7%BB%9F%E4%B9%8B%E8%B5%84%E6%8D%9F%E9%97%AE%E9%A2%98">支付系统之资损问题</a></li></ul></li></ul></li><li><p>其他</p><ul><li>工具<ul><li><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B7%A5%E5%85%B7/git%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4">git 常用命令</a></li><li><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B7%A5%E5%85%B7/maven%E5%9F%BA%E7%A1%80">maven 基础</a></li></ul></li><li>interview<ul><li><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/interview/%E7%AC%94%E8%AF%95%E9%A2%98">笔试题</a></li></ul></li><li><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E7%BD%91%E5%9D%80%E6%94%B6%E8%97%8F">网址收藏</a></li><li><a href="http://localhost:3000/#/docs/%E5%85%B6%E4%BB%96/%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3">帮助文档</a></li></ul></li></ul>
        </article></section></main>
  <script>
    window.$docsify = {
      name: 'CS-BOOK',
      repo: 'https://github.com/peach-boy/cs-book',
      maxLevel: 2,//最大支持渲染的标题层级
      subMaxLevel: 3,
      homepage: 'README.md',
      alias: {
        '/.*/_sidebar.md': '/_sidebar.md',
      },
      loadSidebar: true,
      auto2top: true,//切换页面后是否自动跳转到页面顶部,
       //全文搜索
       search: {
        //maxAge: 86400000, // 过期时间，单位毫秒，默认一天
        paths: 'auto',
        placeholder: '搜索',
        noData: '找不到结果',
        // 搜索标题的最大程级, 1 - 6
        depth: 3,
      }
    }
  </script>
<script src="./首页_files/docsify.min.js"></script>
 <!--Java代码高亮-->
 <script src="./首页_files/prism-java.js"></script>
 <!--全文搜索,直接用官方提供的无法生效-->
 <script src="./首页_files/search.min.js"></script>
 <!-- 复制到剪贴板 -->
 <script src="./首页_files/docsify-copy-code"></script>
 <!-- 图片缩放 -->
 <script src="./首页_files/zoom-image.js"></script>
 <!-- 字数统计 -->
 <script src="./首页_files/countable.js"></script>
 <!-- 侧边栏折叠 -->
  <script src="./首页_files/docsify-sidebar-collapse.min.js"></script>
<script src="./首页_files/livereload.js" async="" defer=""></script>

<div class="progress" style="opacity: 0; width: 0%;"></div></body></html>